<?php
/**
 * Шаблон постраничного вывода
 * 
 * предназначен для работы с постраничным выводом. Выводит списки страниц.
 * 
 * @author Дмитрий Кузьма <kouzma.d@gmail.com>
 * @version 1.0
 */
class View_Pager {

  public function __construct() {}

  /**
   * Функция выдает блок постраничного вывода для страниц вида .../n/
   *
   * @param string $link
   * @param integer $numberOfPages
   * @param integer $pageNumber
   * @param string $jsCode
   */
  public static function getPages($link, $numberOfPages, $pageNumber = 1, $jsCode =''){
    global $icoAltPrevPage, $icoAltNextPage;
    if ($numberOfPages>1){
      echo '<div class="numPages">';
      //if ($pageNumber>1) echo '<a href="' . $link . '1">&lt;&lt;</a> ';
      if ($pageNumber>1) echo  '<p><a href="' . $link . ($pageNumber-1) . '"><img src="' . W_IMAGES .'icons/pageLeft.gif" class="icoPage" alt="' . $icoAltPrevPage . '" /></a></p>';
      for ($i=$pageNumber-10; $i<$pageNumber; $i++){
        if ($i>0) echo '<p><a href="' . $link . $i . '" >'.$i.'</a></p>';
      }
      echo '<p>' . $pageNumber . '</p>';
      for ($i=$pageNumber+1; $i<=$pageNumber+10; $i++){
        if ($i<=$numberOfPages) echo '<p><a href="' . $link . $i . '" >' . $i . '</a></p>';
      }
      if ($pageNumber<$numberOfPages) echo '<p><a href="' . $link . ($pageNumber+1) . '"><img src="' . W_IMAGES .'icons/pageRight.gif" class="icoPage" alt="' . $icoAltNextPage . '" /></a></p>';
      //if ($pageNumber<$numberOfPages) echo '<a href="' . $link . $numberOfPages . '" >&gt;&gt;</a> ';
      echo '</div>';
    }
  }
  
  /**
   * Функция выдает блок постраничного вывода для Get - запросов, когда параметры передаются после "?"
   *
   * @param string $link
   * @param integer $numberOfPages
   * @param integer $pageNumber
   * @param string $jsCode
   */
  public static function getPagesInGet($link, $numberOfPages, $pageNumber = 1, $jsCode =''){
    if ( strpos($link, '?') )#если в ссылке присутствует "?", то селдует использовать & для передачи номера страницы 
      $joiner = '&';
    else
      $joiner = '?';
    global $icoAltPrevPage, $icoAltNextPage;
    if ($numberOfPages>1){
      echo '<div class="numPages">';
      //if ($pageNumber>1) echo '<a href="' . $link . '1">&lt;&lt;</a> ';
      if ($pageNumber>1) echo  '<p><a href="' . $link  . $joiner . 'pageNum=' . ($pageNumber-1) . '"><img src="' . W_IMAGES .'icons/pageLeft.gif" class="icoPage" alt="' . $icoAltPrevPage . '" /></a></p>';
      for ($i=$pageNumber-10; $i<$pageNumber; $i++){
        if ($i>0) echo '<p><a href="' . $link . $joiner . 'pageNum=' . $i . '" >'.$i.'</a></p>';
      }
      echo '<p>' . $pageNumber . '</p>';
      for ($i=$pageNumber+1; $i<=$pageNumber+10; $i++){
        if ($i<=$numberOfPages) echo '<p><a href="' . $link  . $joiner . 'pageNum=' . $i . '" >' . $i . '</a></p>';
      }
      if ($pageNumber<$numberOfPages) echo '<p><a href="' . $link  . $joiner . 'pageNum=' . ($pageNumber+1) . '"><img src="' . W_IMAGES .'icons/pageRight.gif" class="icoPage" alt="' . $icoAltNextPage . '" /></a></p>';
      //if ($pageNumber<$numberOfPages) echo '<a href="' . $link . $numberOfPages . '" >&gt;&gt;</a> ';
      echo '</div>';
    }
  }  

}
?>